package com.cangshi.service;

import com.cangshi.entity.*;

/**
 * Created by Eoly on 2017/1/16.
 */
public interface UserService {
    /**
     *用户简单注册动作
     * @param userRegistion 注册用户实体
     * @return 注册成功为1
     */
    public int userRegistered (UserRegistion userRegistion);

    /**
     *获得上一次注册的id
     * @return userId
     */
    public int getIdFromLastRegistion();

    /**
     * 获得包含用户登录密码的用户实体
     * @param phoneNum 电话号码
     * @return 包含用户登录密码的用户实体
     */
    public UserLoginPsw getLoginPswByPhoneNumber(String phoneNum);

    /**
     * 获得包含用户基础信息的用户实体
     * @param userId 用户id
     * @return 包含用户基础信息的用户实体
     */
    public UserBaseInfo getUserBaseInfoByUserId(Integer userId);


    /**
     * 获得包含用户支付密码的用户实体
     * @param phoneNum 电话号码
     * @return 包含用户支付密码的用户实体
     */
    public UserPayPsw getPayPswByPhoneNumber(String phoneNum);

    /**
     * 获得包含用户登录密码的用户实体
     * @param userId 用户id
     * @return 获得包含用户登录密码的用户实体
     */
    public UserLoginPsw getLoginPswByUserId(Integer userId);

    /**
     * 获得包含用户支付密码的用户实体
     * @param userId 用户id
     * @return 获得包含用户支付密码的用户实体
     */
    public UserPayPsw getPayPswByUserId(Integer userId);

    /**
     * 获得用户的完整信息
     * @param userId 用户id
     * @return 用户实体
     */
    public User getUserById(Integer userId);

    /**
     * 添加用户登录时的信息记录
     * @param loginInformation 登录信息实体
     * @return 添加状态 1 则为成功
     */
    public int addRecordOfLogin(LoginInformation loginInformation);

    /**
     * 修改用户信息
     * @param user
     * @return
     */
    public int modifyUser(User user);




}
